<?php
	$urlCurso			=	constant('PARAMETRO_1');
	$cursoVisualizado	=	new Curso(null, $urlCurso);
	$usuario = $this->getUsuario();
	$idUsuario	=	$usuario == null ? null : $usuario->getIdUsuario();
	$idCurso = $cursoVisualizado->getIdCurso();
	
	//tratar caso em que está dentro da atividade
	
	if($_POST){
		
		if(isset($_POST['btnInserirGrupo']) && !empty($_POST['strNome']))
		{
			if(Grupo::inserir($idCurso, 0, $_POST['strNome'])) {
				adicionaMensagem('Grupo inserido com sucesso!');
			}
			else {
				adicionaMensagem('Erro ao inserir grupo!', 'erro');
			}
		}
		
	}
	
	if(defined('PARAMETRO_3') && constant('PARAMETRO_3') == 'grupos') {
		$alunosSemGrupo = Grupo::getAlunosSemGrupo($cursoVisualizado);
		$grupos = Grupo::getGrupos($cursoVisualizado->getIdCurso());
		
		/* Testes

		$grupos = array();
		
		$t = 0;
		
		for($i=0; $i<4; $i++) {
			$grupos[$i] = NEW Grupo(null, array('idGrupo' => $i, 'idCurso' => 40, 'idAtividade' => null, 'nome' => 'grupo'.$i));
			
			for($j=0; $j<4; $j++) {
				$grupos[$i]->alunos[$j] = array('idUsuario' => $t, 'nome' => 'alunoBolado'.$t);
				$t++;
			}
		}

		 */
		
		foreach($alunosSemGrupo as $key => &$aluno){
			if ($aluno['foto'] == '')
				$aluno['foto']	=	'usuariodefault_pequeno.png';
			else
				$aluno['foto']	=	str_replace('original', 'pequeno', $aluno['foto']);
			
			$aluno['dimensoesFoto']	=	getimagesize(constant('__CAMINHO_FOTO_USUARIO__') . $aluno['foto']);
			$aluno['dimensoesFoto']	=	'width="' . $aluno['dimensoesFoto'][0] . '" height="' . $aluno['dimensoesFoto'][1] . '"';
			
			$aluno['foto']			=	constant('__URL_FOTO_USUARIO__') . $aluno['foto'];
			$aluno['titleFoto']	=	texto('TITLE_FOTO_USUARIO', array($aluno['nome']));
			$aluno['href']			=	montalink(array('usuario', $aluno['idUsuario']));
		}

		if(isset($grupos) && is_array($grupos) && !empty($grupos) && count($grupos) > 0){			
			foreach($grupos as &$grupo){
				foreach($grupo->alunos as &$aluno){
					if (!isset($aluno['foto']) || $aluno['foto'] == '')
					$aluno['foto']	=	'usuariodefault_pequeno.png';
					else
						$aluno['foto']	=	str_replace('original', 'pequeno', $aluno['foto']);
					
					$aluno['dimensoesFoto']	=	getimagesize(constant('__CAMINHO_FOTO_USUARIO__') . $aluno['foto']);
					$aluno['dimensoesFoto']	=	'width="' . $aluno['dimensoesFoto'][0] . '" height="' . $aluno['dimensoesFoto'][1] . '"';
					
					$aluno['foto']			=	constant('__URL_FOTO_USUARIO__') . $aluno['foto'];
					$aluno['titleFoto']	=	texto('TITLE_FOTO_USUARIO', array($aluno['nome']));
					$aluno['href']			=	montalink(array('usuario', $aluno['idUsuario']));
				}
			}
		}
		
		
		//debug($alunosSemGrupo, 'alunosSemGrupo');
		//debug($grupos, 'grupos');
		
		if(isset($grupos) && is_array($grupos) && !empty($grupos)) set('listaGrupos', $grupos);
		if(isset($alunosSemGrupo) && is_array($alunosSemGrupo) && !empty($alunosSemGrupo)) set('alunosSemGrupo', $alunosSemGrupo);

		if(!defined('PARAMETRO_4'))
		{
			set('linkEditar', montaLink(array(PARAMETRO_0,PARAMETRO_1,PARAMETRO_2,PARAMETRO_3,'editar')));
			set('linkSeparar', montaLink(array(PARAMETRO_0,PARAMETRO_1,PARAMETRO_2,PARAMETRO_3,'separar')));
			set('linkAutoSeparar', montaLink(array(PARAMETRO_0,PARAMETRO_1,PARAMETRO_2,PARAMETRO_3,'autoSeparar')));
			
			display('grupos/exibir');
		}
		elseif(constant('PARAMETRO_4') == 'separar')
		{
			if(isset($_POST['btnSepararGrupos']))
			{				
				$arrGrupos = $_POST['grupos'];
				
				foreach($grupos as $key => &$grupo)
				{
					if(isset($arrGrupos[$grupo->idGrupo]))
					{
						//TODO testar se esses alunos são realmente do curso na validação, senão podem inserir alunos não inscritos no curso!
						$grupo->setaAlunos($arrGrupos[$grupo->idGrupo]); 
					}
					else 
					{
						$grupo->esvaziaGrupo();
					}
				}
			}
			
			
			
			set('linkAutoSeparar', montaLink(array(PARAMETRO_0,PARAMETRO_1,PARAMETRO_2,PARAMETRO_3,'autoSeparar')));
			set('linkEditar', montaLink(array(PARAMETRO_0,PARAMETRO_1,PARAMETRO_2,PARAMETRO_3,'editar')));
			set('linkCancelar', montaLink(array(PARAMETRO_0,PARAMETRO_1,PARAMETRO_2,PARAMETRO_3)));
			
			display('grupos/separar');
		}
		elseif(constant('PARAMETRO_4') == 'editar')
		{
			set('linkCancelar', montaLink(array(PARAMETRO_0,PARAMETRO_1,PARAMETRO_2,PARAMETRO_3)));
			
			display('grupos/editar');
		}
		elseif(constant('PARAMETRO_4') == 'autoSeparar')
		{
			
			display('grupos/autoSeparar');
		}
		elseif(constant('PARAMETRO_4') == 'alterar')
		{
			//faz alteração
			
			if(is_numeric(PARAMETRO_5)){
				
				$nomeGrupo = false;
				
				foreach($grupos as $key => &$grupo)
				{
					if($grupo->idGrupo == PARAMETRO_5)
					{
						$nomeGrupo = $grupo->nome;
					}
				}
				if($nomeGrupo === false){
					redireciona(array(PARAMETRO_0,PARAMETRO_1,PARAMETRO_2,PARAMETRO_3,'editar'));
				}
				
				//daqui pra cima testa se o grupo existe e carrega o nome dele, se não existir já redireciona
				
				if(isset($_POST['btnAlterarGrupo']) && !empty($_POST['strNome'])){
					if(Grupo::editar(PARAMETRO_5, $_POST['strNome'])) {
						adicionaMensagem('Grupo editado com sucesso!');
					}
					else {
						adicionaMensagem('Erro ao editar grupo!', 'erro');
					}
					redireciona(array(PARAMETRO_0,PARAMETRO_1,PARAMETRO_2,PARAMETRO_3,'editar'));
				}
				
				set('strNome', $nomeGrupo);
				set('alterar', true);
				set('linkCancelar', montaLink(array(PARAMETRO_0,PARAMETRO_1,PARAMETRO_2,PARAMETRO_3,'editar')));
				display('grupos/editar');
			}else{
				redireciona(array(PARAMETRO_0,PARAMETRO_1,PARAMETRO_2,PARAMETRO_3,'editar'));
			}		
		}
		elseif(constant('PARAMETRO_4') == 'excluir')
		{
			if(is_numeric(PARAMETRO_5)){
				$id = PARAMETRO_5;
				if(Grupo::excluir($id)){
					adicionaMensagem('Grupo excluído com sucesso!');
				} else {
					adicionaMensagem('Erro ao excluir grupo!', 'erro');
				}
			}
			redireciona(array(PARAMETRO_0,PARAMETRO_1,PARAMETRO_2,PARAMETRO_3,'editar'));
		}
		else
 		{
			header('Status: 404 Not Found');
			redireciona(array('404'));
		}
	}
?>